Security News
The Unpaid Backbone of Open Source: Solo Maintainers Face Increasing Security Demands
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
union-value
Advanced tools
Set an array of unique values as the property of an object. Supports setting deeply nested properties using using object-paths/dot notation.
The union-value npm package is used to add unique values to an array located at a specific property path within an object. It ensures that the values are not duplicated within the array.
Add unique values to an array at a specific property path
This feature allows you to add a unique value to an array located at a specific property path within an object. In this example, the value 4 is added to the array at the path 'a.b.c'.
const union = require('union-value');
let obj = { a: { b: { c: [1, 2, 3] } } };
union(obj, 'a.b.c', 4);
console.log(obj); // { a: { b: { c: [1, 2, 3, 4] } } }
Add multiple unique values to an array at a specific property path
This feature allows you to add multiple unique values to an array located at a specific property path within an object. In this example, the values 4, 5, and 6 are added to the array at the path 'a.b.c'.
const union = require('union-value');
let obj = { a: { b: { c: [1, 2, 3] } } };
union(obj, 'a.b.c', [4, 5, 6]);
console.log(obj); // { a: { b: { c: [1, 2, 3, 4, 5, 6] } } }
The set-value package allows you to set a value at a specific property path within an object. Unlike union-value, it does not ensure uniqueness of values in arrays but is more general-purpose for setting any value at a given path.
The get-value package is used to get the value at a specific property path within an object. It complements set-value but does not provide functionality for adding unique values to arrays like union-value.
The has-value package checks if a value exists at a specific property path within an object. It is useful for validation but does not modify the object like union-value.
The unset-value package allows you to remove a value at a specific property path within an object. It is useful for cleanup operations but does not add values like union-value.
Set an array of unique values as the property of an object. Supports setting deeply nested properties using using object-paths/dot notation.
Install with npm
$ npm i union-value --save
var union = require('union-value');
var obj = {};
union(obj, 'a.b.c', ['one', 'two']);
union(obj, 'a.b.c', ['three']);
console.log(obj);
//=> {a: {b: {c: [ 'one', 'two', 'three' ] }}}
a.b.c
) to get a nested value from an object.'a.b.c'
) paths.Install dev dependencies:
$ npm i -d && npm test
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue
Jon Schlinkert
Copyright © 2015 Jon Schlinkert Released under the MIT license.
This file was generated by verb-cli on July 04, 2015.
FAQs
Set an array of unique values as the property of an object. Supports setting deeply nested properties using using object-paths/dot notation.
The npm package union-value receives a total of 9,644,437 weekly downloads. As such, union-value popularity was classified as popular.
We found that union-value demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
Security News
License exceptions modify the terms of open source licenses, impacting how software can be used, modified, and distributed. Developers should be aware of the legal implications of these exceptions.
Security News
A developer is accusing Tencent of violating the GPL by modifying a Python utility and changing its license to BSD, highlighting the importance of copyleft compliance.